約 1,485,052 件
https://w.atwiki.jp/hirotakaohkubo/pages/55.html
ex8.8 Lava Tutorialの類似した演習問題4.8によると、 証明器の呼び出し関数がIOモナドであることを利用して、単に順番に呼び出せということらしい。 verifyFor prover prop ns = sequence [ prover (prop n) | n - ns ] ex88 = verifyFor satzoo prop_AdderCommutative_ForSize [1..32] ex8.9 adder2ではなくadderと同じインタフェースのsubtractorを検証せよという問題文の意図が、 どこまで厳密に確認しろと言っているのかよくわからないところが困る。 長さが等しくない場合も含めて、ではありえない面倒臭さになるので、 桁下がりの初期値なども無視して、正常系のテストのみ。 加算をHaskellの(+)でなくadderで行っている点が怪しいので△ ex89 Int - Property ex89 n = forAll (list n) $ ¥ as - forAll (list n) $ ¥ bs - prop_SubtractorCorrect (as, bs) prop_SubtractorCorrect ([Bit],[Bit]) - Bit prop_SubtractorCorrect (as, bs) = ok where (cs, co) = adder (low, (as, bs)) (es, eo) = subber (low, (cs, as)) ok = eo = co bs == es コメント 名前 コメント
https://w.atwiki.jp/hirotakaohkubo/pages/45.html
10.5 合成 LHS = pure (( h) × id) app = app . ((h .) × id) LHS (f, x) = app ( ((h .) × id) (f, x) ) = app ( h.f, id x ) = (h.f) x RHS = app h = h . app RHS (f, x) = h (app (f, x)) = h (f x) 簡約 RHS = pure id = id LHS = pure (mkPair × id) app = app . (mkPair × id) LHS (a, b) = app ( (mkPair × id) (a, b) ) = app (mkPair a, id b) = (mkPair a) b = (a, b) 外延性 LHS = mkPair f app = app . mkPair f LHS x = app (mkPair f x) = app (f, x) = f x 10.6 app = pure (λ (A f, x) → fst (f x)) = pure fa とおく。すると = A (λb → (fa b, pure fa)) = A (λ (A f, x) → (fst (f x), app)) = A fa とおく。 外延性 mkPair f app = f mkPair f = pure (λc → (f, c)) = pure f1 とおく。すると = A (λb → (f1 b, pure f1)) = A (λc → ((f, c), mkPair f) = A f1 とおく。 LHS = mkPair f app = A f1 A fa = A (λb → let { (c,f ) = f1 b; (d,g ) = fa c; } in (d, f g ) ) = A (λb → let { c = (f, b); f = mkPair f; (d,g ) = fa (f, b); } in (d, f1 g ) ) ここで、fは実はAutoのarrowなので、f = A fi という形に表せるはず。よって続けると、 = A (λb → let { c = (f, b); f = mkPair f; (d,g ) = fa (A fi, b); } in (d, f1 g ) ) = A (λb → let { c = (f, b); f = mkPair f; d = fst (fi b); g = app } in (fst (fi b), mkPair f app) ) = A (λb → (fst (fi b), mkPair f app)) このAの中にある関数の返す値のうち、左側は正しい。しかし右側は正しくない。状態遷移していないから。 正しいfは、 f = A fi = A (λb → fi b) = A (λb → (fst (fi b), snd (fi b))) 10.7 instance ArrowChoice NonDet where left (ND f) = ND lf where lf (Left b) = map Left (f b) lf (Right c) = [Right c] instance ArrowChoice (State st) where left (ST f) = ST lf where lf (s, Left b) = let (s ,d) = f (s,b); in (s , Left d) lf (s, Right c) = (s, Right c) instance ArrowChoice StreamMap where left (SM f) = SM (\xs - comb xs (f (lefty xs))) lefty (Cons (Left x) xs) = Cons x (lefty xs) lefty (Cons (Right x) xs) = lefty xs comb (Cons (Left x) xs) (z zs) = Cons (Left z) comb xs zs comb (Cons (Right y) xs) zs = Cons (Right y) comb xs zs 型は合っているが、則を満たしているかは確認していない。 StreamMapについては afp-arrows を参考にした。 StreamMapに対する古い、おそらく誤っている解。LeftもRightも無限に来ることを前提にしている。 fork Stream (Either a b) - Stream (a, b) fork st = fork2 (fork1 st) fork1 Stream (Either a b) - (Stream a, Stream b) fork1 (Cons b st) = let (stL, stR) = fork1 st in case b of Left l - (Cons l stL, stR) Right r- (stL, Cons r stR) fork2 (Stream a, Stream b) - Stream (a,b) fork2 (Cons l stL, Cons r stR) = Cons (l, r) (fork2 (stL, stR)) unfork Stream (a, b) - Stream (Either a b) unfork (Cons (l,r) st) = Cons (Left l) $ Cons (Right r) (unfork st) instance ArrowChoice StreamMap where left f = SM fork first f SM unfork 10.8 State Autoなら状態を持つ実体が分散するから違うと判るが、 Stateは状態を追加で受け取るだけの純関数と言えるので、 どういう例を持ちだせばよいのか判らない。 StreamMap 反例を示す。 -- take k . apply stream appSMtake (SM f) st k = take k (f st) where take 0 _ = [] take k (Cons x xs) = x take (k-1) xs infixr `Cons` ex108sm = (appSMtake lhs st0 8, appSMtake rhs st0 8) where st0 = st 0 st k = Left k `Cons` Right (k+1) `Cons` st (k+2) lhs = (f ||| g) h rhs = (f h) ||| (g h) f = SM id g = SM id h = SM h0 where h0 (Cons x xs) = Cons x (Cons x (h0 xs)) hによる2重化と|||によるunforkのタイミングが異なるために結果が変わる、 というのはあくまで自分のStreamMapのleftの定義に依存するので、これで正しいのか全然自信がない。 コメント 名前 コメント
https://w.atwiki.jp/hirotakaohkubo/pages/26.html
ex8.1 基底部をどちらかが nil で止まるようにすればいい。変更部分だけを示す。 adder (cin, ([ ], bs)) = bitAdder (cin, bs) adder (cin, (as, [ ])) = bitAdder (cin, as) ex8.2 次の問題で使うための部品と思われるので、使いやすいように、最終的なキャリーを別にするかわりに自分に追加して返す形にする。 adder2 ([Bit], [Bit]) - [Bit] adder2 ([], bs) = bs adder2 (as, []) = as adder2 (a as, b bs) = sum sums ++ [cout] where (sum, car) = halfAdd (a, b) (sums, cout) = adder (car, (as, bs)) ex8.3 andn ([Bit], Bit) - [Bit] andn (as, b) = map (curry and2 b) as multi ([Bit], [Bit]) - [Bit] multi (as, bs) = mbody (bs, []) where mbody ([], ss) = ss mbody (b bs, ss) = t mbody (bs, ts) where (t ts) = adder2 (ss, andn (as, b)) ちょっとドジると結果のビット長が無駄に伸びる。 ここのコードはそうならない。 ex8.4 真理値表替わりのパターンマッチで関数を作る方法は認められないので、 DSLとして提供されている関数で表されているゲートを組み合わせて作らなければならない。 halfSub (Bit,Bit) - (Bit,Bit) halfSub (a, b) = (sub, bor) where sub = xor2 (a, b) bor = and2 (inv a, b) fullSub (Bit,(Bit,Bit)) - (Bit,Bit) fullSub (bin,(a,b)) = (sub, bor) where (sub1,bor1) = halfSub (a, b) (sub, bor2) = halfSub (sub1, bin) bor = xor2 (bor1, bor2) bitSubber (Bit,[Bit]) - ([Bit],Bit) bitSubber (bin, []) = ([], bin) bitSubber (bin, a as) = (sub subs, bout) where (sub, bor) = halfSub (a, bin) (subs, bout) = bitSubber (bor, as) subber (Bit,([Bit],[Bit])) - ([Bit],Bit) subber (bin, (as, [])) = bitSubber (bin, as) subber (bin, ([], bs)) = subber (bin, ([low], bs)) subber (bin, (a as, b bs)) = (sub subs, bout) where (sub,bor) = fullSub (bin, (a, b)) (subs,bout) = subber (bor, (as, bs)) コメント 名前 コメント
https://w.atwiki.jp/hirotakaohkubo/pages/8.html
動画(youtube) @wikiのwikiモードでは #video(動画のURL) と入力することで、動画を貼り付けることが出来ます。 詳しくはこちらをご覧ください。 =>http //atwiki.jp/guide/17_209_ja.html また動画のURLはYoutubeのURLをご利用ください。 =>http //www.youtube.com/ たとえば、#video(http //youtube.com/watch?v=kTV1CcS53JQ)と入力すると以下のように表示されます。
https://w.atwiki.jp/hirotakaohkubo/pages/49.html
9.1 instance Value Int where encode k = Int k decode (Int k) = k instance Value a = Value [a] where encode = foldr (Cons . encode) Nil decode Nil = [] decode (Cons x xs) = decode x decode xs 9.2 差分リストのオンラインで読める説明としては http //www.geocities.jp/m_hiroi/prolog/prolog04.html がある。ただし若干のPrologの知識を必要とする。 コメント 名前 コメント
https://w.atwiki.jp/one_drop_of_tear/
OUTLIVE ONLINEのファンサイトです 攻略、交流をメインに進めていきたいと思います。 更新ペースが遅めですが宜しくお願いします。 Loose Leaf MACK様 First Seed Material REFMAP様 Forever ~ここより永遠に~ 藤井 光様 COPPER ぬいぐるみ様 すきまの素材 ワト様 akiroom 秋山 博紀(AKI)様 Time Passage quartz様 漆黒の館 飛廉様 時の庵 トキツカサ様 @wikiの基本操作 用途別のオススメ機能紹介 @wikiの設定/管理
https://w.atwiki.jp/heater/pages/15.html
石油ファンヒーターは、コロナ、トヨトミ、ダイニチなど様々なメーカーがリリースしているばかりでなく、各メーカー毎に、実にたくさんの機種が存在しています。一体、どの機種を選定するのが、自分にとってベストなのか?コストパフォーマンスが最大に良いのは?いろいろと検討している方も少なくないと思います。 一人暮らしの人であれば、できるだけ、コンパクトなファンヒーターをチョイスするべきです。とくに収納の少ないワンルームでは、スペースを有効活用しなければ、居住スペースを圧迫してしまうことになりますので、なるべく小さなファンヒーターを選ぶべきです。小型のファンヒーターは、比較的安い価格で販売されていますし、通販での価格も、かなり安くなっています。 一方で、広いリビングを暖める場合には、パワフルな暖房出力を持つ大型のファンヒーターかストーブをチョイスするべきでしょう。大型の暖房器具は、効率よくリビングを暖めることができます。通販で購入するときには、業務用の機種まで検討するのがおすすめです。とくに北陸の寒い地域にお住いの方は、業務用ストーブを、家庭のリビングで使用しているケースは少なくありません。 これらの条件の暖房器具を、効率よく選定するための手助けとなるサイトは、ファンヒーター ランキングがおすすめ。各ショップへリンクされていますので、自分にとってベストな暖房器具を見つけたら、迷わず通販サイトへ移行できます。
https://w.atwiki.jp/noslink/
ノーステイルファンサイトリンクWIKIへようこそ このリンク集はみんなで作るリンク集です。 各リンクは自由に編集できたりします。 まだいろいろとありますがよろしくお願いします。 現在いろいろと調整はしていますが、登録はできます。 コメント コメントの前にあるラジオボタンにチェックをいれると、そのコメントの下に返信できます。; 名前 © 2006-07 Entwell Co., Ltd. Published By JALECO LTD.
https://w.atwiki.jp/sengokutaisenark/pages/1037.html
武将名 おおくぼただよ 徳川十六神将 UC大久保忠世 三河の名族大久保氏の首領。多くの合戦に参加し、功を挙げた。なかでも三方ヶ原では敗走する家康が浜松城に退却する際、武田軍に夜襲をかけて追撃の手を鈍らせ、家康を無事帰還させた。家康のもとを離れていた本多正信を推挙するなど懐の深い人物でもあった。「ただ徳川のため! 皆、戦場を疾駆せよ!!」 出身地 三河国(愛知県) コスト 2.0 兵種 槍足軽 能力 武力7 統率7 特技 攻城 計略 忍耐の紅槍術 【三葵:紅/一定時間後点灯】移動速度が下がり、自城に入れなくなる。一定時間で効果が消え、武力と移動速度と槍撃ダメージが上がる。 必要士気3 Illustration 竜徹 計略効果 カテゴリ 士気 状態 武力 統率 速度 兵力 効果時間 その他 紅葵強化 3 前半 - - ?倍 - 4.2c 自城に入れなくなる 後半 +5 - +40% - 6.5c(統率依存0.4c) 槍撃ダメージ+3 (以上2.10A) 解説 徳川2コスト槍。文武両道スペックで城持ちなのが売り。 武力7かつ紅葵なのはSS小松姫と被るが、発動タイミングに癖があるが低士気なのがこちら。 溜め計略ながら武力+5と士気効率は良く、速度・槍撃ダメ共に多少の増加ではあるものの敵にとって面倒な存在となれる。 ゲージの他の色に影響されないので、基本的には攻め上がる際に初動で使って紅葵を点けつつ、敵の出方へ対応していく使い方となる。 備考 台詞 \ 台詞 開幕 徳川のため! 皆、戦場を疾駆せよ!! 計略 - タッチアクション - 撤退 殿、お先に…… 復活 反撃の狼煙をあげよ! 伏兵 - 虎口攻め 今こそ御恩を返すとき! └成功 拙者の運命は徳川とともに! 攻城 攻撃を休めるな! 落城 この身を盾に、徳川を守りとおさん! 熟練度上昇 ただ徳川のために
https://w.atwiki.jp/thijikun/pages/48.html
ティジクンの集い?のもととなったサイト。管理人はやっしー?。 リンク